Registering Unregistering ClientProtector Servers

SoftwareShield System Feature Guide > Testing and Debugging Support > Registering / Un-registering ClientProtector Servers

## Registering / Un-registering ClientProtector Servers

The ClientProtector component is contained in an in-proc COM server dll. That dll ships in two versions, a release version: SSCProt.dll and a debug version: SSCProtD.dll.

Note that when you are using IronWrapping, the ClientProtector is always virtualized in release mode. This means that an IronWrapped project cannot use the ClientProtector debug output.

The ClientProtector interface exposed by these dlls is identical in every respect. This allows you to simply register one or the other to invoke the additional functionality of the debug server, or test using the release version. Because the interface is identical, your code does not have to change at all in order to switch which one you are using.

Because the interface GUIDs are completely identical, when you register one - it will effectively un-register the other.

When you are linking to the debug server (SSCProtD.dll) as soon as a ClientProtector object is created and StartUp is called, a dialog will always appear (unless you set the debug flag DBG_SUPPRESS_WARNING_DLG) reminding you that you are linking to the debug server, as in the following:

This is simply a reminder that you should never distribute the debug version to clients. Also, even though your code does not have to change when you switch to the release version, we recommend that when you are ready for your final release build, that you change the value passed in the DebugFlags parameter of the StartUp function to zero (0) if it wasn't already.

The SoftwareShield License Manager has a built-in functions that allow you to quickly switch which version is registered on your development machine, as well as un-registering them both to test how your code handles this situation. Although using the SoftwareShield License Manager to do this is simpler and faster, you do not have to use this feature to register servers, you can simply use the built in Windows system program regsvr32.

You use regsvr32 to register ActiveX and COM servers on your machine. To use regsvr32 to register the ClientProtector servers, open a command-prompt, change directories to the location where the COM servers are located and use one of the commands as follows:

regsvr32 [/u] SSCProt.dll

Or

regsvr32 [/u] SSCProtD.dll

Where the optional "/u" switch will un-register the server

See the Microsoft Windows documentation for further help using regsvr32.

### More Information

For help on actually using the SoftwareShield License Manager feature to register and un-register the ClientProtector servers, see Register Debug ClientProtector Server, Register Release ClientProtector Server and Un-register ClientProtector Servers in the SoftwareShield License Manager Reference.